package cn.tedu.util;
/**
* @author 作者:bjzhangjian
* @email 邮箱：bjzhangjian@tedu.cn
* @version 创建时间：2021年1月27日 上午11:22:34
* @description 描述：
*/

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JdbcUtil {
	
	/**
	 * 注册驱动，建立连接
	 * @return
	 * @throws Exception 
	 */
	public static Connection getConn() throws Exception {
		//1、加载驱动
		Class.forName("com.mysql.jdbc.Driver");
		System.out.println("驱动加载成功....");
		//2、建立连接localhost  127.0.0.1  192.168.43.233
		String url = "jdbc:mysql://localhost:3306/epidemic19?characterEncoding=utf8";
		String user = "root";//数据库的用户名
		String password = "root";//数据库的密码
		Connection conn = DriverManager.getConnection(url, user, password);
		System.out.println(conn + "建立连接成功");
		return conn;
	}
	
	/** 方法的重载
	 * 释放资源
	 * @param conn  连接资源
	 * @param st  传输去对象
	 * @param rs 结果集对象
	 */
	public static void release(Connection conn, PreparedStatement ps, ResultSet rs) {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				rs = null;
			}
		}
		if (ps != null) {
			try {
				ps.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				ps = null;
			}
		}
		if (conn != null) {
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				conn = null;
			}
		}
	}
	
	
	
	/**
	 * 释放资源
	 * @param conn  连接资源
	 * @param st  传输去对象
	 * @param rs 结果集对象
	 */
	public static void release(Connection conn, Statement st, ResultSet rs) {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				rs = null;
			}
		}
		if (st != null) {
			try {
				st.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				st = null;
			}
		}
		if (conn != null) {
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				conn = null;
			}
		}
	}
	
	
	

}
